﻿using HCQ2_Model.VRDD.InputDto;
using HCQ2_Model.VRDD.InputDto._0427;
using HCQ2_Model.VRDD.InputDto._0531;
using HCQ2_Model.VRDD.InputDto._0629;
using HCQ2_Model.VRDD.OutputDto._0427;
using HCQ2_Model.VRDD.OutputDto._0525;
using HCQ2_Model.VRDD.OutputDto._0629;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace HCQ2_IDAL
{
    /// <summary>
    ///  度度圈用户表数据层接口
    /// </summary>
    public partial interface IDD_UserDAL
    {
        /// <summary>
        ///  获取我的信息
        /// </summary>
        /// <param name="param"></param>
        /// <returns></returns>
        OutMyInfo GetMyInfo(MyBaseUser param, string user_guid);
        /// <summary>
        /// 获取我附近的用户
        /// </summary>
        /// <param name="param">查询参数</param>
        /// <param name="gps_x">经度</param>
        /// <param name="gps_y">纬度</param>
        /// <returns>附近用户</returns>
        List<OutNearbyUser> GetUserByMyNearby(QueryNearbyUser param, decimal gps_x, decimal gps_y);
        /// <summary>
        ///  获取度度圈用户管理列表
        /// </summary>
        /// <param name="param"></param>
        /// <param name="total"></param>
        /// <returns></returns>
        List<OutputCircleUser> GetCircleList(InputCircleUser param, out int total);
        /// <summary>
        ///  修改用户类别
        /// </summary>
        /// <param name="user_type"></param>
        /// <param name="userid"></param>
        void ModifyUserType(int user_type,string userid);

        //*************************************0629需求**************************************
        /// <summary>
        ///  获取用户的最新商品
        /// </summary>
        /// <param name="param"></param>
        /// <returns></returns>
        List<ArticleParam> GetArticleParamList(InputUserArticle param);
        /// <summary>
        ///  获取商铺数量
        /// </summary>
        /// <param name="param"></param>
        /// <returns></returns>
        int GetArticleParamCount(InputUserArticle param);
        /// <summary>
        ///  获取用户动态图片列表
        /// </summary>
        /// <param name="param"></param>
        /// <returns></returns>
        List<PicList> GetPicList(InputUserArticle param);
        /// <summary>
        ///  获取用户未读动态数量
        /// </summary>
        /// <param name="param"></param>
        /// <returns></returns>
        int GetDynamicCount(InputUserArticle param);
        /// <summary>
        ///  获取共同好友列表
        /// </summary>
        /// <param name="param"></param>
        /// <returns></returns>
        List<OutputMutualFriend> GetMutualFriend(InputMutualFriend param);
    }
}